package com.pshcp.domain.model;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 医生排班表
 * </p>
 *
 * @author auto generator
 * @since 2022-11-08
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@Table(name = "t_doctor_schedule")
public class DoctorSchedule implements Serializable {

    private static final long serialVersionUID=1L;

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    /**
     * his排班ID
     */
    private String accessSchId;

    /**
     * his医生ID
     */
    private String accessDoctorId;

    /**
     * 医生名称
     */
    private String doctorName;

    /**
     * 出诊日期yyyy-MM-dd
     */
    private String schDate;

    /**
     * 时间段代码0：全天 1:上午,12:中午, 2:下午, 4:晚上
     */
    private String dayType;

    /**
     * 星期类型：1~7分别代表1到7
     */
    private String weekType;

    /**
     * 科室ID
     */
    private String accessDeptId;

    /**
     * 科室名称
     */
    private String deptName;

    /**
     * 挂号总费用
     */
    private BigDecimal cost;

    /**
     * 挂号费
     */
    private BigDecimal regFee;

    /**
     * 服务费
     */
    private BigDecimal serviceFee;

    /**
     * 可预约挂号数量
     */
    private Integer resNo;

    /**
     * 余号数量
     */
    private Integer remain;

    /**
     * 排班开始时间
     */
    private String startTime;

    /**
     * 排班结束时间
     */
    private String endTime;

    /**
     * 是否专家号 0否 1是
     */
    private String isExpect;

    /**
     * 提前挂号时间
     */
    private String preTime;

    /**
     * 就诊地址
     */
    private String clinicAddr;

    /**
     * 排班号源类型
     */
    private Integer numSrcType;

    /**
     * 排班状态:停诊(0)，有效(1)，撤销(2)，删除(-1)等
     */
    private Integer state;

    /**
     * 排班级别(取自对接的字符串)
     */
    private String schLevel;

    /**
     * 状态 0正常 1删除
     */
    private Integer status;

    /**
     * 创建时间
     */
    private Date createdTime;

    /**
     * 更新时间
     */
    private Date updateTime;


}
